home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / lib / python2.4 / email / Encoders.pyc (.txt) < prev    next >
Python Compiled Bytecode  |  2005-10-18  |  2KB  |  76 lines

  1. # Source Generated with Decompyle++
  2. # File: in.pyc (Python 2.4)
  3.  
  4. '''Encodings and related functions.'''
  5. import base64
  6. from quopri import encodestring as _encodestring
  7.  
  8. def _qencode(s):
  9.     enc = _encodestring(s, quotetabs = True)
  10.     return enc.replace(' ', '=20')
  11.  
  12.  
  13. def _bencode(s):
  14.     if not s:
  15.         return s
  16.     
  17.     hasnewline = s[-1] == '\n'
  18.     value = base64.encodestring(s)
  19.     if not hasnewline and value[-1] == '\n':
  20.         return value[:-1]
  21.     
  22.     return value
  23.  
  24.  
  25. def encode_base64(msg):
  26.     """Encode the message's payload in Base64.
  27.  
  28.     Also, add an appropriate Content-Transfer-Encoding header.
  29.     """
  30.     orig = msg.get_payload()
  31.     encdata = _bencode(orig)
  32.     msg.set_payload(encdata)
  33.     msg['Content-Transfer-Encoding'] = 'base64'
  34.  
  35.  
  36. def encode_quopri(msg):
  37.     """Encode the message's payload in quoted-printable.
  38.  
  39.     Also, add an appropriate Content-Transfer-Encoding header.
  40.     """
  41.     orig = msg.get_payload()
  42.     encdata = _qencode(orig)
  43.     msg.set_payload(encdata)
  44.     msg['Content-Transfer-Encoding'] = 'quoted-printable'
  45.  
  46.  
  47. def encode_7or8bit(msg):
  48.     '''Set the Content-Transfer-Encoding header to 7bit or 8bit.'''
  49.     orig = msg.get_payload()
  50.     if orig is None:
  51.         msg['Content-Transfer-Encoding'] = '7bit'
  52.         return None
  53.     
  54.     
  55.     try:
  56.         orig.encode('ascii')
  57.     except UnicodeError:
  58.         charset = msg.get_charset()
  59.         if charset:
  60.             pass
  61.         output_cset = charset.output_charset
  62.         if output_cset and output_cset.lower().startswith('iso-2202-'):
  63.             msg['Content-Transfer-Encoding'] = '7bit'
  64.         else:
  65.             msg['Content-Transfer-Encoding'] = '8bit'
  66.     except:
  67.         output_cset.lower().startswith('iso-2202-')
  68.  
  69.     msg['Content-Transfer-Encoding'] = '7bit'
  70.  
  71.  
  72. def encode_noop(msg):
  73.     '''Do nothing.'''
  74.     pass
  75.  
  76.